Skip to main content

Anim

  • require version>=5

anim effect list

    AnimLinear=1
AnimEaseIn=2
AnimEaseOut
AnimEaseInOut
AnimEaseInCubic
AnimEaseOutCubic
AnimEaseInOutCubic
AnimEaseInQuart
AnimEaseOutQuart
AnimEaseInOutQuart
AnimEaseInQuint
AnimEaseOutQuint
AnimEaseInOutQuint
AnimEaseInSine
AnimEaseOutSine
AnimEaseInOutSine
AnimEaseInExpo
AnimEaseOutExpo
AnimEaseInOutExpo
AnimEaseInCirc
AnimEaseOutCirc
AnimEaseInOutCirc
AnimEaseInBack
AnimEaseOutBack
AnimEaseInOutBack
AnimEaseInElastic
AnimEaseOutElastic
AnimEaseInOutElastic
AnimEaseInBounce
AnimEaseOutBounce
AnimEaseInOutBounce

anim_effect

anim_effect(effect, x)

return f(x)

anim_effect(AnimEaseInBounce,curtick/allticks)

anim_calc

anim_effect(effect, apos,zpos,alltick,curtick)

return lexp(apos,zpos,f(curtick/alltick))

  • effect: anim type
  • apos: start
  • zpos: end
  • alltick: duration
  • curtick: current

example for all effect show

coloX-4
name: test

__lua__

local animeffect={
'AnimLinear',
'AnimEaseIn',
'AnimEaseOut',
'AnimEaseInOut',
'AnimEaseInCubic',
'AnimEaseOutCubic',
'AnimEaseInOutCubic',
'AnimEaseInQuart',
'AnimEaseOutQuart',
'AnimEaseInOutQuart',
'AnimEaseInQuint',
'AnimEaseOutQuint',
'AnimEaseInOutQuint',
'AnimEaseInSine',
'AnimEaseOutSine',
'AnimEaseInOutSine',
'AnimEaseInExpo',
'AnimEaseOutExpo',
'AnimEaseInOutExpo',
'AnimEaseInCirc',
'AnimEaseOutCirc',
'AnimEaseInOutCirc',
'AnimEaseInBack',
'AnimEaseOutBack',
'AnimEaseInOutBack',
'AnimEaseInElastic',
'AnimEaseOutElastic',
'AnimEaseInOutElastic',
'AnimEaseInBounce',
'AnimEaseOutBounce',
'AnimEaseInOutBounce',
}

local cureffect=1

function preparebg(effname)
print(effname,120-8*#effname/2,120-60,white,0,8)
line(0,120-50,240,120-50,white)
line(0,120+50,240,120+50,white)
color(red)
line(40,120+50,40,120+50)
for i=0,160 do
line(40+i,anim_calc(_G[effname],120+50,120-50,160,i))
end
end
preparebg(animeffect[cureffect])
function _draw()
if btnp(4) then
cls(0)
preparebg(animeffect[cureffect])
cureffect=cureffect+1
if cureffect>#animeffect then
cureffect=1
end
end
end